package com.gengzp.common.model.user.req;

import com.gengzp.common.document.annotations.ApiModel;
import com.gengzp.common.document.annotations.ApiModelProperty;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;

/**
 * @ClassName AddSysUserReq
 * @Description 添加用户请求实体
 * @Author gengzp
 * @Date 2025/5/11 3:09
 */
@Data
@ApiModel(description = "添加用户请求实体")
public class AddSysUserReq implements Serializable {

    @Serial
    private static final long serialVersionUID = -2990978812187219701L;

    /**
     * 用户名
     */
    @NotBlank(message = "用户账号不能为空")
    @Size(min = 6, max = 32, message = "用户账号长度需要在6到32位之间")
    @ApiModelProperty(value = "用户账号", required = true)
    private String userAccount;

    /**
     * 用户密码
     */
    @NotBlank(message = "用户密码不能为空")
    @Size(min = 6, max = 32, message = "用户密码长度需要在6到32位之间")
    @ApiModelProperty(value = "用户密码", required = true)
    private String userPassword;

    /**
     * 用户昵称
     */
    @NotBlank(message = "用户昵称不能为空")
    @Size(max = 32, message = "用户昵称长度不能超过32位")
    @ApiModelProperty(value = "用户昵称", required = true)
    private String userNickname;

    /**
     * 当前客户端
     */
    @NotBlank(message = "当前客户端不能为空")
    @ApiModelProperty(value = "当前客户端", required = true)
    private String clientType;

}
